using System;
using System.Collections.Generic;
using System.Text;

using SlimDX;
using SlimDX.Direct3D9;
using SlimDX.Windows;

namespace miciv
{
    public class BitmapFontInfo
    {
        // <info face="Trebuchet MS" size="32" bold="0" italic="0" charset="" unicode="1" stretchH="100" smooth="1" aa="1" padding="0,0,0,0" spacing="1,1" outline="2"/>
        protected string m_strFace;
        protected string m_strCharset;
        protected Vector4 m_f4Padding;
        protected Vector2 m_f2Spacing;
        protected uint m_uSize;
        protected uint m_uStretchH;
        protected uint m_uOutline;
        protected bool m_bBold;
        protected bool m_bItalic;
        protected bool m_bUnicode;
        protected bool m_bSmooth;
        protected bool m_bAA;

        public BitmapFontInfo()
        {
            this.m_f4Padding = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
            this.m_f2Spacing = new Vector2(0.0f, 0.0f);
        }

        public string Face
        {
            get
            {
                return this.m_strFace;
            }
            set
            {
                this.m_strFace = value;
            }
        }

        public string Charset
        {
            get
            {
                return this.m_strCharset;
            }
            set
            {
                this.m_strCharset = value;
            }
        }

        public Vector4 Padding
        {
            get
            {
                return this.m_f4Padding;
            }
            set
            {
                this.m_f4Padding = value;
            }
        }

        public Vector2 Spacing
        {
            get
            {
                return this.m_f2Spacing;
            }
            set
            {
                this.m_f2Spacing = value;
            }
        }

        public uint Size
        {
            get
            {
                return this.m_uSize;
            }
            set
            {
                this.m_uSize = value;
            }
        }

        public uint StretchH
        {
            get
            {
                return this.m_uStretchH;
            }
            set
            {
                this.m_uStretchH = value;
            }
        }

        public uint Outline
        {
            get
            {
                return this.m_uOutline;
            }
            set
            {
                this.m_uOutline = value;
            }
        }

        public bool Bold
        {
            get
            {
                return this.m_bBold;
            }
            set
            {
                this.m_bBold = value;
            }
        }

        public bool Italic
        {
            get
            {
                return this.m_bItalic;
            }
            set
            {
                this.m_bItalic = value;
            }
        }

        public bool Unicode
        {
            get
            {
                return this.m_bUnicode;
            }
            set
            {
                this.m_bUnicode = value;
            }
        }

        public bool Smooth
        {
            get
            {
                return this.m_bSmooth;
            }
            set
            {
                this.m_bSmooth = value;
            }
        }

        public bool AA
        {
            get
            {
                return this.m_bAA;
            }
            set
            {
                this.m_bAA = value;
            }
        }
    }
}
